package com.whmskj.xjlhsc.mobie.empProPlan.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.whmskj.xjlhbc.domain.Yg01employeefiles;
import com.whmskj.xjlhsc.mobie.Scheduling.Dto.DcSchedulingQueryDto;
import com.whmskj.xjlhsc.mobie.Scheduling.Dto.DevicePlatformChangeDto;
import com.whmskj.xjlhsc.mobie.Scheduling.Dto.GetProductDeviceDto;
import com.whmskj.xjlhsc.mobie.Scheduling.Dto.UpdatePersonExchangeDto;
import com.whmskj.xjlhsc.mobie.Scheduling.entity.vo.DcSchedulingVo;
import com.whmskj.xjlhsc.mobie.empProPlan.dto.ScanDeviceDto;
import com.whmskj.xjlhsc.mobie.empProPlan.entity.ProPersonnelStandConfirm;

import java.util.List;
import java.util.Map;

/**
 * @author lk
 * @since 2025-07-07 11:01:25
 */
public interface ProPersonnelStandConfirmService extends IService<ProPersonnelStandConfirm> {

    Page<ProPersonnelStandConfirm> findPage(ProPersonnelStandConfirm params);

    List<ProPersonnelStandConfirm> findList(ProPersonnelStandConfirm params);

    ProPersonnelStandConfirm findById(Long id);

    boolean insert(ProPersonnelStandConfirm proPersonnelStandConfirm);

    boolean update(ProPersonnelStandConfirm proPersonnelStandConfirm);

    int delete(Long id);

    /**
     * 挡车排版列表显示
     * @param queryDto
     * @return
     */
    List<DcSchedulingVo> DcSchedulingList(DcSchedulingQueryDto queryDto);

    List<Map<String,Object>> getSchedulingDate(String process, String startTime, String endTime);

    List<ScanDeviceDto> getProductDevice(GetProductDeviceDto getProductDeviceDto );

    void saveDevicePlatChange(DevicePlatformChangeDto devicePlatformChangeDto);

    void deleteConfirm(Long id);

    List<Yg01employeefiles> getPersonExchangeList(String keyWord);

    void updatePersonExchange(UpdatePersonExchangeDto updatePersonExchangeDto);

    List<DcSchedulingVo> personSchedulingList(DcSchedulingQueryDto dcSchedulingQueryDto);

    List<List<ScanDeviceDto>> getProductDeviceGroup(GetProductDeviceDto getProductDeviceDto);
}